package com.hksj.cbm.controller;

import com.hksj.cbm.dto.LargeScreenBaseDTO;
import com.hksj.cbm.service.LargeScreenBaseService;
import com.hksj.cbm.vo.LargeScreenDeviceModelVO;
import com.hksj.cbm.vo.LargeScreenLoopDeviceModelVO;
import com.hksj.cbm.vo.LargeScreenVideoDeviceModelVO;
import com.hksj.common.core.model.Rest;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * @author zengke
 * @version 1.0
 * @see LargeScreenBaseController
 * @since 2024/08/20 16:30
 */

@Api(tags = "基础模块-大屏基础查询")
@RestController
@RequestMapping("/largeScreenBase")
public class LargeScreenBaseController {

    @Autowired
    private LargeScreenBaseService largeScreenBaseService;

    @ApiOperation(value = "查询大屏的设备模型列表")
    @PostMapping("/queryLargeScreenBindDeviceModelList")
    public Rest<List<LargeScreenDeviceModelVO>> queryLargeScreenBindDeviceModelList(@RequestBody LargeScreenBaseDTO largeScreenBaseDTO){
        List<LargeScreenDeviceModelVO> largeScreenDeviceModelList = largeScreenBaseService.queryLargeScreenBindDeviceModelList(largeScreenBaseDTO);
        return Rest.ok(largeScreenDeviceModelList);
    }

    @ApiOperation(value = "查询大屏的虚拟设备模型列表")
    @PostMapping("/queryLargeScreenBindVirtualDeviceModelList")
    public Rest<List<LargeScreenLoopDeviceModelVO>> queryLargeScreenBindVirtualDeviceModelList(@RequestBody LargeScreenBaseDTO largeScreenBaseDTO){
        List<LargeScreenLoopDeviceModelVO> largeScreenDeviceModelList = largeScreenBaseService.queryLargeScreenBindVirtualDeviceModelList(largeScreenBaseDTO);
        return Rest.ok(largeScreenDeviceModelList);
    }

    @ApiOperation(value = "查询大屏的视频设备模型列表")
    @PostMapping("/queryLargeScreenBindVideoDeviceModelList")
    public Rest<List<LargeScreenVideoDeviceModelVO>> queryLargeScreenBindVideoDeviceModelList(@RequestBody LargeScreenBaseDTO largeScreenBaseDTO){
        List<LargeScreenVideoDeviceModelVO> largeScreenBindVideoDeviceModelList= largeScreenBaseService.queryLargeScreenBindVideoDeviceModelList(largeScreenBaseDTO);

        return Rest.ok(largeScreenBindVideoDeviceModelList);
    }
}
